The computing of planar oblique cross-sections from a three-dimensional array of data is commonly referred to as multi-planar reformatting (“MPR”). The data used for MPR images can be obtained from medical tomographic scanners such as, for example, magnetic resonance (“MR”), computed tomography (“CT”), positron emission tomography (“PET”), or other apparatus capable of producing a series of slices in a grid-like array.
Technological advances in the field of tomographic imaging have greatly improved the spatial resolution and speed of data acquisition, resulting in the production of very large datasets composed of hundreds, and even thousands, of slices. For example, it is possible to rapidly generate a sequence of 1024 slices using the Siemens SOMATOM VolumeZoom™ CT scanner, with each slice having a grid of 512×512 picture elements, resulting in a three-dimensional volume of 512×512×1024 volume elements for a total of over 268 million data values.
In an oil and gas industry example, seismic data measurements are also stored in very large three-dimensional volumes with as many as 2048×2048×2048 grid elements for a total of over 8.5 billion data values. Such an enormous amount of data is often larger than the random-access memory (“RAM”) storage available on many modern computers. Some three-dimensional arrays can be so large that their size exceeds the memory addressing capability of 32-bit central processing units (“CPU”s) found in many personal computers and graphics workstations, which CPUs may be limited to addressing a maximum of 4.2 billion data elements.
MPR has heretofor been implemented as an image-order technique, where the pixel locations of the cross-sectional image are generated and traversed sequentially, transformed in the coordinate system of the volume data, and interpolated over a data neighborhood of the three-dimensional array. Thus, one limitation of current MPR methods is that they require random access to the data values of the three-dimensional array, and therefore the entire array needs to be stored in the computer's RAM. In order to compute MPR images of very large volumes, a costly apparatus with very large amounts of RAM is typically needed.
Another limitation of current methods is that when using a 32-bit CPU, for example, the size of the three-dimensional array used for MPR is limited to the maximum number of data elements addressable by the CPU. Thus, a need exists to remove these limitations in order to permit an apparatus and/or programmed computer having a limited amount of memory to compute MPR cross-sectional images of very large three-dimensional arrays, which arrays may be composed of an arbitrarily large number of slices.